Modern computing systems place a high importance on system security. Computing systems may contain secret or proprietary data, systems, documents, algorithms, drawings and/or designs. If this information becomes available because it is not properly secured and protected, harm to the owners of that data may result. Physical systems such as laptop computers, servers, mobile devices and the like may protect computing information by the use of passwords or may provide greater security by encrypting storage devices and only allowing access if an appropriate cryptographic key is provided at system startup. Such encryption and decryption functionality may be provided at an operating system level in order to further increase security. In computer systems involving virtualized computing environments, where a plurality of guest computing systems may operate on a single host computing system, the guest computing systems may have at least as strong a need for encrypted storage devices. In such virtual computing environments, where the guest computing systems may start and stop automatically, automatically providing encryption and decryption services to virtual machine operating systems without altering the operating systems and without compromising the security of the cryptographic keys are things that many conventional techniques fail to achieve.